package pe.edu.upc.e41a.javasoft.service;

import java.util.List;

import javax.persistence.TypedQuery;

import org.springframework.roo.addon.layers.service.RooService;
import pe.edu.upc.e41a.javasoft.domain.Publicacion;
import pe.edu.upc.e41a.javasoft.domain.Usuario;

@RooService(domainTypes = { pe.edu.upc.e41a.javasoft.domain.Publicacion.class })
public interface PublicacionService {

	public abstract long countAllPublicacions();


	public abstract void deletePublicacion(Publicacion publicacion);


	public abstract Publicacion findPublicacion(Integer id);


	public abstract List<Publicacion> findAllPublicacions();


	public abstract List<Publicacion> findPublicacionEntries(int firstResult, int maxResults);


	public abstract void savePublicacion(Publicacion publicacion);


	public abstract Publicacion updatePublicacion(Publicacion publicacion);
	
	
	//DESDE PROYECTO SCV
	public abstract String registrarPublicacion(Publicacion publicacion);
	
	public abstract String actualizarPublicacion(Publicacion publicacion);
	
	public abstract String buscarPublicacionPorTituloIgual(String titulo);
	
	public abstract TypedQuery<Publicacion> MostrarPublicacion(Integer IdPublicacion);
	
	public abstract List<Publicacion> listarPublicacionPorTituloODescripcion(String cadena);
	public abstract String actualizarEstadoPublicacion(Publicacion publicacion);

}
